package config

import "log"

import "gopkg.in/gcfg.v1"

type AllConfig struct {
	App     appConfig
	Db      DbConfig
	Redis   RedisConfig
	Swagger SwaggerConfig
}

var allConfig AllConfig

func InitConfig() {

	err := gcfg.ReadFileInto(&allConfig, "config/app.ini")
	if err != nil {
		log.Fatal(err)
	}
}

func GetAllConfig() *AllConfig {
	return &allConfig
}

func GetAppConfig() *appConfig {

	return &allConfig.App
}

func GetDbConfig() *DbConfig {

	return &allConfig.Db
}

func GetRedisConfig() *RedisConfig {
	return &allConfig.Redis
}

func GetSwaggerConfig() *SwaggerConfig {
	return &allConfig.Swagger
}
